#python glob
# -*- coding: utf-8 -*-
import os
import sys
import glob
'''
    在python中，glob模块是用来查找匹配的文件的
    在查找的条件中，需要用到Unix shell中的匹配规则：

       *    :   匹配所所有
       ?    :   匹配一个字符
       *.*  :   匹配如：[hello.txt,cat.xls,xxx234s.doc]
       ?.*  :   匹配如：[1.txt,h.py]
       ?.gif:   匹配如：[x.gif,2.gif]

    如果没有匹配的，glob.glob(path)将返回一个空的list:[]
'''
def get_all():
    '''获取目录[c:\\tmp]下面所有的文件'''
    return glob.glob('*.*')

def get_my_file():
    '''获取目录[c:\\tmp]下面文件名为4个字符的文件'''
    return glob.glob('c:\\tmp\\????.txt')

def get_batch_file():
    '''获取目录[c:\\tmp]下面扩展名为\'.txt\'的文件'''
    return glob.glob('c:\\tmp\\*.txt')

def main():
    print('获得当前路径:'+os.getcwd())
    
    print('当前路径下的文件:'+','.join(os.listdir('./')))
    fname='/home/zhaoxiang/scripting/python/intro/hw.py'
    basename = os.path.basename(fname) #返回文件名
    dirname = os.path.dirname(fname) #返回文件路径
    print(basename+'------'+dirname)
    dirname, basename = os.path.split(fname) 
    print(basename+'------'+dirname)
    newdir = os.path.join(os.getcwd(), 'mynewdir')
    print('newdir:'+newdir)
    
   
if __name__ == '__main__':
    main()
    
    
    
    '''
    os.path.split(os.getcwd())[0]得到当前目录的父目录，然后使用os.path.join方法去得到目标文件的地址

filepath = os.path.join(os.path.split(os.getcwd())[0], "template\test.xml")

os和os.path模块
os.mkdir()
os.makedirs()
os.listdir(dirname)：列出dirname下的目录和文件
os.getcwd()：获得当前工作目录
os.curdir:返回但前目录（'.')
os.chdir(dirname):改变工作目录到dirname
os.path.isdir(name):判断name是不是一个目录，name不是目录就返回false
os.path.isfile(name):判断name是不是一个文件，不存在name也返回false
os.path.exists(name):判断是否存在文件或目录name
os.path.getsize(name):获得文件大小，如果name是目录返回0L
os.path.abspath(name):获得绝对路径
os.path.normpath(path):规范path字符串形式
os.path.split(name):分割目录,文件名（事实上，如果你完全使用目录，它也会将最后一个目录作为文件名而分离，同时它不会判断文件或目录是否存在）
os.path.splitext():分离文件名与扩展名
os.path.join(path,name):连接目录与文件名或目录
os.path.basename(path):返回文件名
os.path.dirname(path):返回文件路径
    '''